package com.ruoyi.generator.mapper;

import com.ruoyi.generator.entity.ClUser;
import com.ruoyi.generator.entity.MaintenancePlan;
import com.ruoyi.generator.entity.MaintenancePlanHistory;
import com.ruoyi.generator.entity.PlanAssociation;
import com.ruoyi.generator.entity.bo.PlanScheduleCountBo;
import com.ruoyi.generator.po.*;
import com.ruoyi.generator.vo.MaintenanceAppVO;

import java.util.List;

/**
 * 业务字段 数据层
 * 
 * @author ruoyi
 */
public interface MaintenanceMapper
{
    List<MaintenanceWushuiShift> selectMaintenanceScheduleList();

    void saveEdit(WushuiShift wushuiShift);

    long selectScheduleId(String period);

    List<WushuiShift> selectDefaultShifts(long scheduleId);

    void deleteScheduleShifts(long scheduleId);

    void save(WushuiShift wushuiShift);

    List<Device> selectDeviceList(Device device);

    List<WushuiSchedule> getSchedules();
    List<ClUser> selectByrs(ClUser cl);

    int addCheckingPlan(MaintenancePlan maintenancePlan);

    List<SpotCheckPlan> getPlan(String planName);

    SpotCheckPlan getPlanById(SpotCheckPlan spotCheckPlan);

    int inspectionRecordUpload(InspectionRecord inspectionRecord);

    void updatePlan(MaintenancePlan plan);

    void updatePlanStatus();


    List<MaintenanceAppVO> getMaintenanceListByStatus(MaintenanceAppVO m);

    /**
     * 统计任务状态的数量 Tz
     *
     * @param
     */
    List<PlanScheduleCountBo> selectMainScheduleCount();
    void updatePlanMstatus(MaintenancePlan plan);

    int faultDeclaration(FaultDeclaration faultDeclaration);
    void insertWushuiMaintenancePlanHistory(MaintenancePlanHistory maintenancePlanHistory);
    List<FaultDeclaration> getFaultDeclaration();
    List<InspectionRecord> getInspectionRecord();

    List<MaintenancePlan> selectMaintenancePlanList(Maintenance Maintenance);

    List<WushuiSchedule> getMaintenanceSchedules();
}
